package com.ruoyi.system.service;

import java.util.List;
import java.util.Map;

/**
 * 首页数据统计Service接口
 * 
 * @author ruoyi
 * @date 2025-01-01
 */
public interface IDashboardService 
{
    /**
     * 获取用户总数
     * 
     * @return 用户总数
     */
    public Long getTotalUsers();

    /**
     * 获取视频总数
     * 
     * @return 视频总数
     */
    public Long getTotalVideos();

    /**
     * 获取评论总数
     * 
     * @return 评论总数
     */
    public Long getTotalComments();

    /**
     * 获取点赞总数
     * 
     * @return 点赞总数
     */
    public Long getTotalLikes();

    /**
     * 获取今日新增用户数
     * 
     * @return 今日新增用户数
     */
    public Long getTodayNewUsers();

    /**
     * 获取今日新增视频数
     * 
     * @return 今日新增视频数
     */
    public Long getTodayNewVideos();

    /**
     * 获取今日新增评论数
     * 
     * @return 今日新增评论数
     */
    public Long getTodayNewComments();

    /**
     * 获取今日新增点赞数
     * 
     * @return 今日新增点赞数
     */
    public Long getTodayNewLikes();

    /**
     * 获取用户增长趋势
     * 
     * @param days 天数
     * @return 用户增长趋势数据
     */
    public List<Map<String, Object>> getUserTrend(int days);

    /**
     * 获取视频增长趋势
     * 
     * @param days 天数
     * @return 视频增长趋势数据
     */
    public List<Map<String, Object>> getVideoTrend(int days);

    /**
     * 获取视频分类统计
     * 
     * @return 分类统计数据
     */
    public List<Map<String, Object>> getCategoryStats();

    /**
     * 获取用户活跃度统计
     * 
     * @param days 天数
     * @return 活跃度统计数据
     */
    public List<Map<String, Object>> getUserActivity(int days);
}
